package task19;

import javax.swing.plaf.basic.BasicInternalFrameTitlePane.MaximizeAction;

/**
 * Create by IntelliJ IDEA
 *
 * @author: jsonor
 * @date-Time: 2018/3/30 10:12
 * @description:
 * 定义一个有这些数的数组：{20, 10, 45, 24, 78, 53, 100, 60}。
 * 输出该数组的最大值和最小值
 */
public class Test1 {

  public static void main(String[] args) {
    int[] arr={20,10,45,24,78,53,100,60};
    //调用遍历数组所有元素方法
    printArry(arr);
    //调用求数组中最大值方法
    int max=myMax(arr);
    System.out.println("数组中的最大值是："+max);
    //调用求数组中最小值方法
    int min=myMin(arr);
    System.out.println("数组中的最小值是："+min);
    int sort=mySort(arr);
    System.out.println("从大到小排序");
  }

  /**
   * 从大到小排序
   * @param arr
   * @return
   */
  private static int mySort(int[] arr) {
    int temp;
    for (int i = 0; i < arr.length; i++) {
      for (int j = i+1; j < arr.length; j++) {
        if (arr[i] < arr[j]) {
          temp = arr[i];
          arr[i] = arr[j];
          arr[j] = temp;  // 两个数交换位置
        }
      }
    }
    for (int i = 0; i < arr.length; i++) {
      System.out.print(arr[i]+"  ");
    }
    return 0;
  }

  /**
   * 返回数组中的最小值
   * @param arr
   * @return
   */
  private static int myMin(int[] arr) {
    int min=arr[0];
    for(int i=1;i<arr.length;i++){
      if(arr[i]<min){
        min=arr[i];
      }
    }
    return min;
  }


  /**
   * 返回数组中的最大值
   * @param arr
   * @return
   */
  private static int myMax(int[] arr) {
    int max=arr[0];
    for(int i=1;i<arr.length;i++){
      if(arr[i]>max){
        max=arr[i];
      }
    }
    return max;
  }

  /**
   * 便利数组所有元素
   * @param arr
   */
  private static void printArry(int[] arr) {
    for(int i=0;i<arr.length;i++){
      System.out.print(arr[i]+"\t");
    }
    System.out.println();
  }
}
